Method and system for mapping multi-dimensional model to data warehouse schema

ABSTRACT

A system maps a multidimensional model to data warehouse schema. The system includes a multidimensional model editor for defining a multidimensional model based on a conceptual model; a mapping reasoner for generating more simple mappings from basic mappings by reasoning on the conceptual model so as to provide mappings for concerning elements in an ontology path in the multidimensional model; a data warehouse schema analyzer for generating a data structure capable of indicating information of the data warehouse schema by making an analysis on the information of the data warehouse schema; and a mapping composition engine for generating result mappings according to mappings for the concerning elements of the ontology path in the multidimensional model and by searching in the data structure paths corresponding to the concerning elements of the ontology path in the multidimensional model. A method and computer program product are also disclosed.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims priority from a prior ChinesePatent Application No. 200710096351.7 filed on Apr. 13, 2007, the entiredisclosure of which is herein incorporated by reference in its entirety.

FIELD OF THE INVENTION

The present invention generally relates to information processing, andin particular, to a method and system for mapping multidimensional modelto data warehouse schema.

BACKGROUND OF THE INVENTION

The successful operation and use of data warehouses heavily depends onthe effective management of a multitude of metadata. In a data warehousesystem, there are two types of users: technical users and businessusers. Technical users such as data warehouse administrators are mainlyinterested in metadata in the technical implementation aspect, whilebusiness users, who are not familiar with technologies such as datastructured query language (SQL), are interested in understanding thebusiness meaning of data, and therefore need business-orientedrepresentations of the structure and contents of data in data warehouse.So, the metadata in data warehouse can be divided into two categoriesbased on target users for the metadata, comprising:

Business Metadata: Business metadata intend to provide abusiness-oriented description of the data and processes. In a datawarehouse environment, the important business metadata include: BusinessConcept Model, i.e. a concept model that is used for organizing businessknowledge in a semantic way and that represents how to run businessesvia relationships among business concepts, concept attributes andconcepts; Multidimensional Model, i.e. a concept model that is used fordefining complete requirement for business intelligence (BI) applicationand that represents how to measure businesses in terms of measures,dimensions and the hierarchies of dimensions.

Technical Metadata: Technical metadata provide the description of datawithin an IT infrastructure, for instance, locations of data, names ofdata, method for accessing to servers, data storage types, and otherattributes. Some example technical metadata are the schema of datawarehouse, the schema of operational data sources.

The schematic mapping from the business metadata to IT metadata is thekey to design a business-friendly data warehouse. This mapping canadvantageously support the implementation of: business-orientednavigation of the data collected in the data warehouse or the datamarts; ad-hoc querying at the level of business concepts without havingto know the technical details on query languages (such as SQL); theautomatic deployment of data mart based on the on-line analyticalprocessing (OLAP) requirement represented by the business metadata.

In the prior art, a multidimensional model is defined by business usersfrom the perspective of businesses, and a data warehouse schema isdeveloped by one or more groups of technical users, and the mapping fromthe multidimensional model to the data warehouse (DW) schema(star-schema), i.e. the mapping from the path expression ofmultidimensional model to the path expression of data warehouse schemahas to be created manually. Here, a path expression includes a directproperty of the concerning class and an indirect property connecting twoclasses through a chain of properties.

The creation of mapping from a path expression of multidimensional modelto a path expression of data warehouse schema is a very complex,time-consuming and error-prone task, since measures and dimensions inthe multidimensional model are always correlated and their semantics isimplicit to the data warehouse schema. In addition, the mappings thatwere created previously are difficult to be reused for similardimensions. For example, if there are three dimensions, namely policyholder's education level, policy holder's income and insuranceparticipant's income, in a claim analysis of an insurance company, themappings for a dimension is difficult to be reused for any otherdimension because there are no separate mappings for the concepts“policy holder” and “insurance participant” and no separate mappings forthe property “income.”

Apparently, the creation of the mapping from multidimensional model todata warehouse schema by means of the existing solutions is very complexand specialists who are familiar with both a business and an ITinfrastructure, is required to conduct a large amount of work in orderto complete the creation accurately. Business users can hardly createvarious mappings as their demands in a specific applicationindependently and conveniently and ensure certain accuracy at the sametime. As a result, the efficiency of management and utilization of thedata warehouse is degraded dramatically.

SUMMARY OF THE INVENTION

To solve the problems in the prior art, the present invention proposes asolution that can reduce the complexity of mapping from multidimensionalmodel to data warehouse schema to a great extent and assist users increating complex mapping from the path expression of multi-dimensionalmodel to the path expression of data warehouse schema. This isespecially advantageous to business users.

According to a first aspect of the present invention, a system formapping multidimensional model to data warehouse schema is provided. Thesystem comprises: a multidimensional model editor for defining amultidimensional model based on a conceptual model; a mapping reasonerfor generating more simple mappings from basic mappings by reasoning onthe conceptual model so as to provide mappings for concerning elementsin an ontology path in the multidimensional model; a data warehouseschema analyzer for generating a data structure capable of indicatinginformation of the data warehouse schema by making an analysis on theinformation of the data warehouse schema; and a mapping compositionengine for generating result mappings according to mappings for theconcerning elements of the ontology path in the multidimensional modeland by searching in the data structure paths corresponding to theconcerning elements of the ontology path in the multidimensional model.

According to a second aspect of the present invention, a method formapping multidimensional model to data warehouse schema is provided. Themethod comprises the steps of: defining a multidimensional model basedon a conceptual model; generating more simple mappings from basicmappings by reasoning on the conceptual model so as to provide mappingsfor concerning elements in an ontology path in the multidimensionalmodel; generating a data structure capable of indicating information ofthe data warehouse schema by making an analysis on the information ofthe data warehouse schema; and generating result mappings according tomappings for the concerning elements of the ontology path in themultidimensional model and by searching in the data structure pathscorresponding to the concerning elements of the ontology path in themultidimensional model.

According to a third aspect of the present invention, provided is acomputer program product for implementing the method according to thepresent invention when being executed by a computer device.

With the present invention, the existing basic mappings can be reusedfor different ontology paths. With the reusing of the existing basicmappings, the present invention assists the user to built complexmappings from multidimensional model to data warehouse schema moreconveniently and effectively. Moreover, the probability of erroroccurrence in building complex mapping from composite ontology path todata warehouse schema is reduced by providing result mappings andallowing users to select and refine result mappings in the friendlyinterface.

Other features and advantages of the present invention will become moreapparent from the following detailed description, when taken inconjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will be made to the following accompanying drawings to explainin detail features and advantages of embodiments of the presentinvention. If possible, like or similar reference numerals designate thesame or similar components throughout the figures thereof anddescription, in which:

FIG. 1 depicts a system for mapping multidimensional model to datawarehouse schema according to an embodiment of the present invention;

FIG. 2 schematically depicts an example of a conceptual modelrepresented by ontology language;

FIG. 3 schematically depicts an example of a structure of a datawarehouse;

FIG. 4 schematically depicts an example of a functional dependencygraph;

FIG. 5 depicts a processing flowchart adopted by a mapping compositionengine for generating composite mapping according to an embodiment ofthe present invention;

FIG. 6 schematically depicts a shortest path found in the functionaldependency graph; and

FIG. 7 depicts a processing flowchart of a method for mappingmultidimensional model to data warehouse schema according to anembodiment of the present invention; and

FIG. 8 schematically depicts a computer device in which embodimentsaccording to the present invention can be implemented.

DETAILED DESCRIPTION

FIG. 1 schematically depicts a system for mapping multidimensional modelto data warehouse schema according to an embodiment of the presentinvention.

As depicted in FIG. 1, reference numeral 100 denotes a system formapping multidimensional model to data warehouse schema according to anembodiment of the present invention. The system consists of four maincomponents, wherein reference numeral 101 denotes a multidimensionalmodel editor, 102 a data warehouse schema analyzer, 103 a mappingreasoner, and 104 a mapping composition engine. FIG. 1 further depictsan ontology 10, a data warehouse 11, basic mappings 12, which serve asdata information inputs of system 100, and result mappings 13, whichserve as output information of system 100.

According to an embodiment of the present invention, a user usesmultidimensional model editor 101 to define a multidimensional modelconforming to specific business analysis requirement, wherein themultidimensional model is defined according to a conceptual modelrepresented by ontology 10. For example, ontology 10 presents in Webontology language. Inputs to mapping reasoner 103 includemultidimensional models from multidimensional model editor 101, ontology10 and basic mappings 12. Basic mappings 12 include mappings from eachelement (concept, relationship, property) in the conceptual modelrepresented by ontology 10 to the data warehouse schema, and basicmappings 12 are known (pre-established) information. Mapping reasoner103 may further generate more simple mappings by reasoning on theconcept model. Preferably, mapping reasoner 103 can invoke an ontologyreasoner 1031 to perform the reasoning. Data warehouse schema analyzer102 performs an analysis of schema information of data warehouse 11,produces a data structure capable of indicating schema information ofthe data warehouse, and outputs the data structure to mappingcomposition engine 104. Mapping composition engine 104 searches in thedata structure capable of indicating schema information of the datawarehouse paths corresponding concerning ontology elements and thengenerates result mappings from composite ontology path to data warehousescheme. Preferably, mapping composition engine 104 can perform ashortest path searching on the data structure indicating schemainformation of the data warehouse by means of a KSP solver 1041.Further, mapping composition engine 104 can preferably rank generatedresult mappings and output a list of ranked result mappings. In thismanner, the user can select or refine desired mappings from ontologypath to data warehouse schema based on the list of result mappingsoutput by system 100.

The operating principle of system 100 will be set forth in detail.

Multidimensional model editor 101 is used by a user to define amultidimensional model. As described previously, the multidimensionalmodel defines complete requirement for business intelligence (BI)application and represents how the business is measured in terms ofmeasures, dimensions and the hierarchies of dimensions. Themultidimensional model defined by multidimensional model editor 101according to the present application is characterized in that it isdefined completely by business terms in the conceptual model representedby ontology 10. In an implementation, since the conceptual model isrepresented by ontology 10 in terms of OWL language, the core of themultidimensional model definition language in multidimensional modeleditor 101 is an extension of OWL language with ontology pathexpressions. In a broad sense, an ontology path expression can be justone single class or property, i.e. basic ontology path expression; or achain of multiple properties, i.e. composite ontology path expression.The composite ontology path expression is used to denote relationshipfrom one class to another class or data range.

The definition of an ontology path in multidimensional model editor 101will be shown in the BNF format hereinafter. The operator “.” is used todenote the traversal from one class to another class via anobjectProperty, and the access of a datatypeProperty. As the objectproperty can be applied to multiple classes, the DomainClass andRangeClass are the applied class for the property.

  OntPathExpr ::=         Class |         datatypeProperty |        objectProperty |          DomainClass‘.’objectProperty[‘[’RangeClass‘]’] |         DomainClass ‘.’datatypeProperty |        OntPathExpr‘.’objectProprety[‘[’ RangeClass ‘]’] |         OntPathExpr‘.’ dataytypeProperty   objectProperty ::= R |          ‘{circumflex over ( )}’R   R::= object property name inontology   dataytypeProperty::= datatype property name in ontology  DomainClass ::= class name in ontology   RangeClass  ::= class name inontology   Class ::= class name in ontology

For example, according to the conceptual model (represented by OWL)depicted in FIG. 2, a multidimensional model might be defined for asimple premium analysis in multidimensional model editor 101 in order toreview the relationships among the agent's level, education level andselling premium:

Measure: received premium

Dimension: selling agent's level, selling agent's education level

These measures and dimensions may be represented by the compositeontology path expression starting from the “InsurancePolicy” class:

Received premium::=InsurancePolicy.premium

Selling agent's level::=InsurancePolicy.soldBy[Agent].level

Selling agent's educationlevel::=InsurancePolicy.soldBy[Agent].playedBy[Person].educationLevel

Since the user defines a multidimensional model according to theconceptual model (ontology) in the present invention, it can beappreciated that the core of the mapping from multidimensional model toDW schema is the mapping from ontology path expression to data warehouseschema. The source of a mapping rule is the ontology path expression,and the target of a mapping rule is data warehouse schema pathexpression, such as relational database (RDB) path expression of datawarehouse 11.

Like the ontology path expression, in the RDB path expression, tablescorrespond to the classes in ontology, and foreign keys correspond tothe object properties in ontology, and columns correspond to the datatype properties. It should be noted that one foreign key in RDB connectsonly one target table, which is different from the RangeClass inontology.

The definition of the RDB path will be shown in the BNF formathereinafter.

RDBPathExpr ::=     Table‘.’Rlsp |     Table‘.’ column |   RDBPathExpr‘.’ Rlsp |   RDBPathExpr ‘.’ column Rlsp ::= FK |    ‘{circumflex over( )}’FK|    ‘(’Table‘.’ column compOp Table‘.’column‘)’ Table ::= tablename in RDB schema column ::= column name in RDB schema FK   ::= foreignkey column name in RDB schema compOp ::= ‘=’ | ‘<=’ | ‘<’ | ‘>=’ | ‘>’

For example, data warehouse 11 stores relational data as depicted inFIG. 3. FIG. 3 depicts three tables. Table 301, named DV_AGT_DEMO,includes AGT_DEMO_ID andother columns; table 302, named D_AGT_LVL,includes AGT_LVL_ID, AGT_LVL_DESC and other columns, among whichAGT_LVL_ID is a primary key (PK); table 303, named F_PLCY_EVT, includesPLCY_EVT_ID, LOAD_DAY_ID, PROD_CAT and other columns, among whichPLCY_EVT_ID and LOAD_DAY_ID are primary keys (PK) and PROD_CAT, PROD_IDand AGT_LVI_ID are foreign keys. For example, the RDB paths in FIG. 3include:

  F_PLCY_EVT.AGT_LVL_ID.AGT_LVL   F_PLCY_EVT.(F_PLCY_(—) EVT.AGT_DEMO_ID=D_AGT_DEMO. AGT_DEMO_ID). AGT_EDU

In the present invention, the mapping from multidimensional model basedon the conceptual model to DW schema corresponds to a set of mappingrules with 4-ary tuples as <Source, Target, Condition, Translation>.According to the present invention, the “Source” is the ontology pathexpression; the “Target” is the RDB path expression; the “Condition” isthe definition of under what condition for the target the mapping iscorrect, which corresponds to the WHERE clause in SQL; and the“Translation” is the value translation function that translates thevalues for ontology property to the data values for column in RDBschema.

The syntax for a mapping rule will be shown in the BNF formathereinafter.

  MappingRule ::= ruleID‘:’ src_path  ‘:-’ tgt_path[‘Condition:’condition] [‘Translation:{’ translation‘}’]   src_path ::=OntPathExpr   tgt_path ::= RDBPathExpr   condition  ::=SQLCondition  translation  ::=      {translationPair‘;’} translationPair  translationPair ::= constant ‘=’ constant   constant  ::= uri|literal  uri ::= URI reference   ruleID ::= String

Since the ontology path expressions includes basic ontology expressions,namely individual classes or properties, and composite ontology pathexpressions, namely indirect properties each representing a chain ofmultiple properties, the mapping rules employed in the present inventioncan be divided into two categories: basic mapping and composite mapping.

In the basic mapping, the source is individual class, object property ordatatype property. According to an embodiment of the present invention,since the multidimensional model is created according to the conceptualmodel represented as ontology, technical users may create the mappingfrom each element (including class, object property, datatype property)in ontology to DW schema in advance (for example, during the stage ofsystem development). In the embodiment depicted in FIG. 1, basicmappings 12 are established in advance and serving as one of data inputsto mapping reasoner 103.

In the composite mapping, the source is a composite ontology pathexpression other than individual class, object property or datatypeproperty. According to an embodiment of the present invention, themapping from the composite ontology path expression to DW schema isachieved by means of mapping composition engine 104 searching in thedata structure representing information of data warehouse schema pathscorresponding to concerning ontology elements and then generating aresult mapping from the composite ontology path to data warehouseschema.

In order to generate candidate mappings in mapping composition engine104, two information inputs are required, namely an input representinginformation of ontology paths and an input representing data structureindicating schema information of DW. To begin with, a description willbe given to these two information inputs.

The input representing information of ontology paths are provided bymapping reasoner 103. Mapping reasoner 103 generates more simplemappings from basic mappings by reasoning on the conceptual model. Forexample, the reasoning rules may include:

A class inherits all the mappings of its subclasses, i.e.

M(C)=M(C)∪{M(C _(i))|C _(i) ⊂C}.

A property inherits all the mappings of its sub-properties, i.e.

M(p)=M(p)∪{M(p _(i))|p_(i) ⊂p}.

Wherein M denotes mapping operation, C denotes “class”, and p denotes“property”.

The reasoning services to get all the subclasses of a class and all thesub-properties of a property are provided by an internal ontologyreasoner (ontology reasoner 1031 as depicted in FIG. 1) of system 100 oran external ontology reasoner (not depicted).

The data structure representing the schema information of DW is providedby data warehouse schema analyzer 102. Data warehouse schema analyzer102 analyzes the schema information of data warehouse 11 and generates adata structure capable of indicating the schema information of the datawarehouse. The data structure capable of indicating the schemainformation of the data warehouse may be a functional dependency (FD)graph. If data warehouse 11 is 3-NF, the functional dependencyinformation generated by data warehouse schema analyzer 102 is trivial,i.e. all non-primary key columns are dependent on the primary key (PK)column. But if DW schema 11 is not 3-NF, the functional dependencyinformation that cannot be derived from the table needs to be inputtedin advance. Similar to the basic mapping, the functional dependencyrelation among non-primary keys in the data warehouse is knowninformation established in advance and serving as an input to datawarehouse schema analyzer 102 (not separately depicted in FIG. 1).

Assume that each table in data warehouse 11 has a column as primary key,the Functional Dependency may be represented in the form of:

X→Y, where X can be a column, and Y can be a set of columns.

The Functional Dependency between two different tables can be joined bythe foreign key relationship between tables, i.e.,

X→Y, Y′→Z, and <Y,Y′>is the <FK, PK>pair, then X→Z,

For a relational database, the nodes of the corresponding functionaldependency graph are the columns in one table, the edges denote thefunctional dependency relationship or a join between a <FK, PK> pair.Preferably, if the edge type in the functional dependency graph is ofjoin, then the weight is 1, otherwise it is 0. So, the functionaldependency graph in data warehouse schema analyzer 102 is a weighted anddirected graph. The functional dependency graph may contain cycles if arelational database has a foreign key directed to itself.

As an example, a sub-graph for the functional dependency information intable 303 depicted in FIG. 3 is as depicted in FIG. 4.

Mapping composition engine 104 searches in the data structurerepresenting schema information of the data warehouse pathscorresponding to ontology elements and then generates the result mappingfrom the composite ontology path to data warehouse schema. Specifically,the inputs to mapping composition engine 104 include an ontology pathexpression C1.P1[C2] . . . Pn-1[Cn].Pa, known mappings inputted frommapping reasoner 103 (including basic mappings and reasoned simplemappings). According to an implementation of the present invention, themappings M(C1) for C1 and M(Pa) for attribute Pa may be inputted forexample. The inputs to mapping composition engine 104 further includethe functional dependency graph G inputted from data warehouse schemaanalyzer 102. As described previously, mapping composition engine 104may further perform a shortest path searching on the data structureindicating the schema information of a data warehouse by means of a KSPsolver 1041. So the inputs to mapping composition engine 104 may furtherinclude a maximally returned number of result mappings for ranking.

FIG. 5 depicts a processing flowchart adopted by a mapping compositionengine for generating composite mapping according to an embodiment ofthe present invention.

The processing starts with step S500.

In step S501, a corresponding start node(s) Ns of the ontology pathC1.P1[C2] . . . Pn-1[Cn].Pa in the functional dependency graph G isobtained, i.e. the mapped foreign key(s) for C1 is obtained andcorresponding node(s) thereof in the functional dependency graph G isfound. Ns in the functional dependency graph of the data warehouse cancorrespond to a plurality of nodes.

Take the following example into consideration. Through reasoning ofmapping reasoner 103, mapping composition engine 104 obtains thefollowing mapping information as inputs:

Agent:—F_PLCY_EVT.AGT_ID[D AGT]

level:—D_AGT_LVL.AGT_LVL

And through analysis of data warehouse schema analyzer 102, mappingcomposition engine 104 obtains a functional dependency graph as depictedin FIG. 4. Then, with respect to the composite ontology path:“Agent.level,” the corresponding node obtained in this step and for themapped foreign key(s) of “Agent” are:

Ns={F_PLCY_EVT.AGT_ID}

In step S502, a corresponding end node(s) Nt of the ontology pathC1.P1[C2] . . . Pn-1[Cn].Pa in the functional dependency graph G isobtained, i.e. the mapped column(s) for Pa is obtained and acorresponding node(s) thereof in the functional dependency graph G isfound. Nt in the functional dependency graph of the data warehouse cancorrespond to a plurality of nodes.

In the above example, for example, the obtained corresponding node forthe mapped column for “level” is:

Nt={D_AGT_LVL.AGT_LVL}

Preferably, in step S503, the weight of each edge of the functionaldependency graph G is adjusted to get G′. For example, the correspondingedges in G for the mapping M(P1), . . . M(Pn) may be found, and theweight of these edges is adjusted to 0.3. In this manner, the highestpriority of the K-Shortest Path algorithm will be given to correspondingnodes for classes and properties in the ontology path expression insearching shortest paths.

In step S504, a maximally returned number (i.e. K) of shortest paths arefound in G′ based on Ns and Nt. Specifically, if each of Ns and Nt is aset of nodes, then a maximally returned number, i.e. K, of shortestpaths are found in G′ for each node s in Ns and for each node t in Nt.This step may be performed by invoking a shortest path solver inside thesystem (e.g. KSP solver 1041 depicted in FIG. 1) or a shortest pathsolver outside the system (not depicted). The shortest path solversearches K shortest paths in a directed graph with non-negative weightby means of any known algorithms, such as the double-sweep algorithm andthe generalized Floyd algorithm.

In the above example, for example, the shortest paths found in thefunctional dependency graph are as depicted in FIG. 6.

In step S505, the obtained K shortest paths in the functional dependencygraph are translated into mapping expressions. The mapping is built byconnecting the table by the “join” edge, and ignoring the edges withweight as “0”, except of the last edge for reaching Nt.

In step S506, the result mappings M(P) are returned.

In the above sample, for example, the result mappings provided to theuser may be:

Path1: Agent.level

-   -   :-F_PLCY_EVT.AGT_LVL_ID[D AGT_LVL].AGT_LVL

Path2: Agent.level

-   -   :-F_PLCY_EVT.AGT_ID[D AGT].AGT_LVL_ID[D AGT_LVL].AGT_LVL

The processing ends with step S507.

Preferably, mapping composition engine 104 may rank the obtained resultmappings so as to be selected by the users. According to animplementation of the present invention, the obtained result mappingsmay be ranked according to the following expression:

Rank(p)=weight(p)+α×(1−|S _(m) ∩S _(p) |/|S _(m)|), 0<α<1

Wherein p is the obtained shorted path, S_(m) is the set of nodes in thefunctional dependency graph corresponding to the class and propertiesother than the start class (C1) and end property, and S_(p) is the setof the nodes which the path p covers.

The less the calculated value of Rank (p), the higher the relevancebetween the mapping and the ontology path.

Of course, those having ordinary skill in the art may use any approachesto rank the result mappings as their concrete demands.

FIG. 7 depicts a processing flowchart of a method for mappingmultidimensional model to data warehouse schema according to anembodiment of the present invention.

The processing starts with step S700.

In step S701, a multidimensional model conforming to specific businessanalysis requirements is defined based on a conceptual model representedfor example by ontology. A user may select the ontology path in awell-built multidimensional model as the source for mapping via agraphical user interface.

In step S702, basic mappings that are established in advance areinputted. The basic mappings are mappings from each element in theconceptual model to data warehouse schema. Preferably, simple reasoningmay be performed on the basis of basic mappings in order to get moresimple mappings.

In step S703, a data structure capable of indicating schema informationof the data warehouse is generated and inputted. The data structure maybe a functional dependency graph denoting functional dependencyinformation of the data warehouse, for example.

In step S704, possible result mappings are generated for the compositeontology path by searching in the data structure indicating the schemainformation of the data warehouse paths corresponding to ontologyelements. According to an implementation of the present invention, asearching of shortest paths in the functional dependency graph may beperformed in order to generate possible result mappings.

Preferably, in step S705, the obtained result mappings are ranked so asto be selected by the users. According to an implementation of thepresent invention, the obtained result mappings may be ranked accordingto the following expression:

Rank(p)=weight(p)+α×(1−|S _(m) ∩S _(p) |/|S _(m)|), 0<α<1

Wherein p is the obtained shorted path, S_(m) is the set of nodes in thefunctional dependency graph corresponding to the class and propertiesother than the start class (C1) and end property, and S_(p) is the setof the nodes which the path p covers.

The less the calculated value of Rank (p), the higher the relevancebetween the mapping and the ontology path.

Of course, those having ordinary skill in the art may use any approachesto rank the result mappings as their concrete demands.

The processing ends with step S706.

FIG. 8 schematically depicts a computer device in which the embodimentsaccording to the present invention may be implemented.

The computer system depicted in FIG. 8 comprises a CPU (CentralProcessing Unit) 801, a RAM (Random Access Memory) 802, a ROM (Read OnlyMemory) 803, a system bus 804, a Hard Disk controller 805, a keyboardcontroller 806, a serial interface controller 807, a parallel interfacecontroller 808, a display controller 809, a hard disk 810, a keyboard811, a serial external device 812, a parallel external device 813 and adisplay 814. Among these components, connected to system bus 804 are CPU801, RAM 802, ROM 803, HD controller 805, keyboard controller 806,serial interface controller 807, parallel interface controller 808 anddisplay controller 809. Hard disk 810 is connected to HD controller 805,and keyboard 811 to keyboard controller 806, serial external device 812to serial interface controller 807, parallel external device 813 toparallel interface controller 808, and display 814 to display controller809.

The functions of each component in FIG. 8 are well known in the art, andthe architecture depicted in FIG. 8 is conventional. Such architectureapplies to not only personal computers but also hand held devices suchas Palm PCs, PDAs (personal data assistants), mobile telephones, etc. Indifferent applications, for example, for implementing a user terminal ora server host performing the method for creating the mappings accordingto the present invention, some components may be added to thearchitecture depicted in FIG. 8, or some of the components depicted inFIG. 8 may be omitted. The whole system depicted in FIG. 8 is controlledby computer readable instructions, which are usually stored as softwarein hard disk 810, EPROM or other non-volatile memory. The software canalso be downloaded from the network (not depicted in the figure). Thesoftware, either stored in hard disk 810 or downloaded from the network,can be loaded into RAM 802, and executed by CPU 801 for implementing thefunctions defined by the software.

As the computer system depicted in FIG. 8 is able to support thesolution of mapping multidimensional model to data warehouse schemaaccording to the present invention, the computer system merely serves asan example of computer systems. Those having ordinary skill in the artmay understand that many other computer system designs are also able tocarry out the embodiments of the present invention.

The present invention may further be implemented as a computer programproduct used by, for example the computer system depicted in FIG. 8,which contains code for implementing the system for mappingmultidimensional model to data warehouse schema according to the presentinvention. The codes may be stored in a memory of other computer systemprior to the usage. For instance, the code may be stored in a hard diskor a removable memory like an optical disk or a floppy disk, or may bedownloaded via the Internet or other computer network.

Although specific embodiments of the invention have been disclosed,those having ordinary skill in the art will understand that changes canbe made to the specific embodiments without departing from the spiritand scope of the invention. The scope of the invention is not to berestricted, therefore, to the specific embodiments, and it is intendedthat the appended claims cover any and all such applications,modifications, and embodiments within the scope of the presentinvention.

1. A system for mapping multidimensional model to data warehouse schema,comprising: a multidimensional model editor for defining amultidimensional model based on a conceptual model; a mapping reasonerfor generating more simple mappings from basic mappings by reasoning onthe conceptual model so as to provide mappings for concerning elementsin an ontology path in the multidimensional model; a data warehouseschema analyzer for generating a data structure capable of indicatinginformation of the data warehouse schema by making an analysis on theinformation of the data warehouse schema; and a mapping compositionengine for generating result mappings according to mappings for theconcerning elements of the ontology path in the multidimensional modeland by searching in the data structure paths corresponding to theconcerning elements of the ontology path in the multidimensional model.2. The system according to claim 1, comprising: a user interface forsupporting selection of the result mappings.
 3. The system according toclaim 1, wherein the basic mappings comprise mappings from each elementin the conceptual model to the data warehouse schema, and the basicmappings are built in advance.
 4. The system according to claim 1,wherein the mapping reasoner employs at least following reasoning rules:a class inherits all the mappings of its subclasses; and a propertyinherits all the mappings of its sub-properties.
 5. The system accordingto claim 1, wherein the data warehouse schema analyzer indicates theinformation of the data warehouse schema in terms of a functionaldependency graph.
 6. The system according to claim 5, wherein themapping composition engine is further configured for: obtaining sets ofstart nodes and end nodes in the functional dependency graphcorresponding to the ontology path; and searching shortest paths in thefunctional dependency graph based on the sets of start ends and endnodes.
 7. The system according to claim 5, wherein the functionaldependency graph is a weighted and directed graph, and weights of therespective edges in the directed graph are adjustable, and wherein themapping composition engine is further configured for ranking the resultmappings according to current weights in the functional dependency graphso as to be selected by the user.
 8. The system according to claim 7,wherein the mapping composition engine ranks the result mappingsaccording to the following expression:Rank(p)=weight(p)+α×(1−|S _(m) ∩S _(p) |/|S _(m)|), 0<α<1 wherein p isthe obtained shortest path, S_(m) is the set of nodes in the functionaldependency graph corresponding to the class and properties other thanthe start class (C1) and end property, and S_(p) is the set of the nodeswhich the path p covers.
 9. A method for mapping a multidimensionalmodel to data warehouse schema, comprising the steps of: defining amultidimensional model based on a conceptual model; generating moresimple mappings from basic mappings by reasoning on the conceptual modelso as to provide mappings for concerning elements in an ontology path inthe multidimensional model; generating a data structure capable ofindicating information of the data warehouse schema by making ananalysis on the information of the data warehouse schema; and generatingresult mappings according to mappings for the concerning elements of theontology path in the multidimensional model and by searching in the datastructure paths corresponding to the concerning elements of the ontologypath in the multidimensional model.
 10. The method according to claim 9,comprising the step of: selecting the result mappings.
 11. The methodaccording to claim 9, wherein the basic mappings comprise mappings fromeach element in the conceptual model to the data warehouse schema, andthe basic mappings are built in advance.
 12. The method according toclaim 9, wherein reasoning rules employed in the step of generating moresimple mappings from the basic mapping comprise: a class inherits allthe mappings of its subclasses; and a property inherits all the mappingsof its sub-properties.
 13. The method according to claim 9, wherein theinformation of the data warehouse schema is indicated in terms of afunctional dependency graph.
 14. The method according to claim 13,further comprising the steps of: obtaining sets of start nodes and endnodes in the functional dependency graph corresponding to the ontologypath; and searching shortest paths in the functional dependency graphbased on the sets of start ends and end nodes.
 15. The method accordingto claim 13, wherein the functional dependency graph is a weighted anddirected graph, and weights of the respective edges in the directedgraph are adjustable, and wherein the method further comprises the stepof: ranking the result mappings according to current weights in thefunctional dependency graph so as to be selected by the user.
 16. Themethod according to claim 15, wherein the result mappings are rankedaccording to the following expression:Rank(p)=weight(p)+α×(1−|S _(m) ∩S _(p) |/|S _(m)|), 0<α<1 wherein p isthe obtained shortest path, S_(m) is the set of nodes in the functionaldependency graph corresponding to the class and properties other thanthe start class (C1) and end property, and S_(p) is the set of the nodeswhich the path p covers.